System and method for displaying advertising in an interactive program guide

ABSTRACT

An interactive program guide containing schedule data for multiple channels and advertising data is provided to viewers on a screen. The advertising may be related to the programs adjacent thereto in the guide and to time slots displayed on the screen. The advertising srolls in various directions in response to the viewer&#39;s scrolling of the grid, but at a different pace and according to a different scheme than the scrolling of the schedule data itself. For example, the advertising may remain on the screen in a predetermined location while the viewer scrolls the schedule data, and then scroll off the screen to be replaced by new ads after a predetermined number of channels scroll off the screen, or on the basis of time slots and/or adjacent channels displayed on the screen. This provides for greater viewer attention to the advertising and for greater control by advertisers over the manner and length in which advertising is presented to viewers.

[0001] Applicants claim the benefit of the following two provisional patent applications, each of which applications is hereby incorporated by reference herein in its entirety:

[0002] provisional application serial No. 60/225,209, titled “SYSTEM AND METHOD FOR DISPLAYING ADVERTISING IN AN INTERACTIVE PROGRAM GUIDE,” filed Aug. 14, 2000; and

[0003] provisional application serial No. 60/283,921, titled “INTERACTIVE TELEVISION NAVIGATION SYSTEM,” filed Apr. 16, 2001.

COPYRIGHT NOTICE

[0004] A portion of the disclosure of this patent document contains material which is subject to copyright protection. The copyright owner has no objection to the facsimile reproduction by anyone of the patent document or the patent disclosure, as it appears in the Patent and Trademark Office patent files or records, but otherwise reserves all copyright rights whatsoever.

RELATED APPLICATIONS

[0005] This application is related to patent application Ser. No. 09/018,541, attorney docket no. 3063/15, titled METHOD AND SYSTEM FOR NAVIGATING THROUGH CONTENT IN AN ORGANIZED AND CATEGORIZED FASHION, filed Feb.4, 1998, now pending, which is hereby incorporated by reference into this application in its entirety.

[0006] This application is related to patent application Ser. No. 09/103,317, attorney docket no. 3063/12, titled METHOD AND SYSTEM FOR PROVIDING USER INTERFACE FOR ELECTRONIC PROGRAM GUIDE, filed Jun. 24, 1998, now pending, which is hereby incorporated by reference into this application in its entirety.

BACKGROUND OF THE INVENTION

[0007] The present invention disclosed herein relates generally to electronic program guides. More particularly, the present invention relates to a system and method for displaying more effective banner and tune-in ads in an interactive program guide.

[0008] The number of video channels that offer various programming content, including the Internet and other on-line content, continues to increase. Channel surfing is no longer a viable solution for viewers to find an interesting program by sequentially or randomly examining every channel. As a result, electronic program guides (EPG) that continuously list channels and their content televised at a particular time will become practically indispensable for viewers.

[0009] Because of this necessity to use an electronic program guide, an opportunity is presented to advertise various products and services in the EPG contemporaneously with program schedule data. Examples of the use of advertising with programs guides are shown in International Application No. PCT/US97/23852 titled “EPG with Advertising Inserts,” and U.S. Pat. No. 5,940,073 titled “Method and System for Displaying Other Information in a TV Program Guide,” both of which are hereby incorporated by reference into this application. PCT application PCT/US97/23852 discusses the insertion of an advertisement between television program listings in an EPG screen. The advertisement appears as a single line in the program guide grid and scrolls or otherwise moves along with and in identical fashion as the rest of the program listings. U.S. Pat. No. 5,940,073 discusses an EPG having an area on the EPG display, separate from the program listings portion of the display, for advertising programs, products and services, where the advertising information changes as the user moves the EPG cursor from cell to cell or after the passage of a predetermined number of seconds.

[0010] In both cases, users are shown advertisements on the same screen as the program guide listings. However, neither reference is particularly sensitive to user viewing behavior, especially in the use of EPGs. Placing an advertisement in a separate region of the EPG display from the program guide listings requires a user to turn his or her eyes away from the program guide listings to view the advertisement. Since users pull up the EPG specifically to see the program guide listings, and usually only for a short period until a desired program to view is located, they are unlikely to pay any particular attention to the advertisement appearing on a separate portion of the display. Placing the advertisement in the program listings portion of the display appears to overcome this problem; however, users are likely to pay only brief attention to the ad as it scrolls past while searching through the program guide listings.

[0011] A need therefore continues to exist for an improved system and method that presents schedule data and advertising data to viewers in an effective but unobtrusive and flexible manner.

BRIEF SUMMARY OF THE INVENTION

[0012] The present invention provides a system and method for contemporaneously displaying schedule data and advertising data in an interactive program guide in a fashion which increases the likelihood of receiving user attention to the advertisement, but which keeps the ad from becoming obtrusive or annoying to the user. The advertising data may be related to programs scheduled for broadcast and time slots at which programs are scheduled for broadcast. As such, the advertisement may serve as a “tune-in” ad for upcoming programming.

[0013] One embodiment of the invention provides a method of displaying advertising in an electronic program guide on a display device, the electronic program guide having at least a list of program cells each containing a program choice available for viewing. The method includes scrolling the list of program cells on the display device in a first direction in accordance with a first scrolling scheme, displaying an advertisement cell within the list of program cells, and moving the advertisement cell in the first direction as the list of program cells scrolls, the advertisement cell moving in accordance with a second scheme different than the first scrolling scheme. The advertisement cell's scrolling scheme may be controlled from a remote location, such as by transmitting parameters for the scrolling scheme from a head end of a cable system to subscribers or such other comparable central station in a satellite, microwave or other television distribution system.

[0014] In particular embodiments, the second scrolling scheme involves scrolling the advertisement cell in concurrence with the scrolling of the program cell list during a first time portion in which the program cell list scrolls and keeping the advertisement cell stationary during a second time portion in which the program cell list scrolls. The scrolling may be in the vertical, horizontal or other direction on the display device. The second time portion may be determined based upon a first number of program cells which have moved past the advertisement cell while the advertisement cell is kept stationary, with the first number of program cells being received from a remote location.

[0015] In addition to or as an alternative to this embodiment, the second scheme may include scrolling the advertisement cell in concurrence with the scrolling of the program cell list during a first time portion in which the program cell list scrolls and scrolling the advertisement cell during a second time portion in which the program cell list is stationary. This may occur, for example, in a system in which a highlight cell is displayed on the display device such that program and advertisement cells may enter the highlight cell. The advertisement cell may then be scrolled while the program cell list is kept stationary when the advertisement cell is entered in the highlight cell.

[0016] In some embodiments, the advertisement cell operates according to different scrolling schemes of these types for both vertical and horizontal directions in the program guide grid.

[0017] The highlight cell may be a fixed, stationary highlight cell in which the entire program guide moves behind the cell and program choices and the advertisement cell enter and leave the cell. Alternatively, the highlight cell may be a movable cursor or similar graphical user interface mechanism in which the program guide moves when the cursor reaches an extremity of the guide, such as the top or bottom thereof, to reveal more cells not previously visible on the display device. These new program choices may enter the screen one cell at a time or one page at a time; in either instance, the movement is generally referred to herein as scrolling.

[0018] In particular embodiments, the first direction is a vertical scrolling direction on the display device, and the program cell list contains a top cell and a bottom cell displayed on the display device. Keeping the advertisement cell stationary may then involve keeping the advertisement cell stationary when the advertisement cell reaches the top or bottom cell of the program cell list.

[0019] An advertisement is inserted into the advertisement cell. The advertisement may contain text, graphics, animation, or other multimedia components. In particular embodiments, the inserted advertisement is related to one or more program cells displayed in the program guide on the display screen. The advertisement may be replaced in the advertisement cell with another advertisement when the program choices displayed in the program guide change due to scrolling of the program cells. Advertisements may alternatively be attached to a particular channel. Also, the electronic program guide may contain program choices available for viewing at scheduled times, as opposed, for example, to program choices available on demand. The program cells would be arranged according to the scheduled times of the program choices, and the advertisement inserted into the advertisement cell may be for a program choice available for viewing at a time close in time to the scheduled times of program choices displayed on the display screen, such as an hour or two from the currently displayed time or later that evening.

[0020] The present invention further includes a method for providing an interactive program guide including schedule data and advertising data for display on a screen. According to the present invention, the schedule data is arranged into a grid containing rows and columns according to a listing of channels and starting times of programs that are broadcast via the channels. A plurality of cells is thus formed containing names of the programs. The advertising data is inserted into a predetermined row of the grid for display on the screen. Using a remote control, a viewer scrolls the schedule data in the grid to view the listing of other channels and the starting times of other programs broadcast via the other channels. While the viewer scrolls the schedule data, the advertising data remains on the screen in the predetermined row of the grid.

[0021] The advertising data is arranged into cells such that one or more advertising cells are displayed in the predetermined row of the grid. In accordance with one aspect of the present invention, each advertising cell contains an advertisement related to the starting times of the programs displayed on the screen. In accordance with another aspect of the present invention, each advertising cell contains an advertisement related to the channels substantially adjacent the predetermined row containing the advertising data displayed on the screen.

[0022] The present invention further includes improved user interface designs for an interactive program guide. According to one embodiment, the improved user interface contains a listing of program choices arranged in at least one row or column on a display device, the listing being navigated by a user through scrolling in accordance with a first scrolling scheme, and an advertisement cell contained within the program listing column or row. The advertisement cell is configured to move on the display device in accordance with a second scrolling scheme, the second scrolling scheme being different than the first scrolling scheme. In addition, a list of service identifiers, such as television channel numbers or operators, is displayed in association with the program choices in the program choice listings, and an advertisement identifier, such as the word “AD,” is contained in the list of service identifiers and displayed in association with the advertisement cell. Thus, the content of the advertisement cell is clearly identifying as an ad and not necessarily a program choice such as may otherwise be displayed in a currently scheduled time slot in the guide.

[0023] Another embodiment of a user interface for an interactive program guide includes a set of first program cells arranged in at least one row or column on a display device, the set being navigated by a user through scrolling in accordance with a first scrolling scheme, and at least one second program cell arranged within the column or row, the second program cell being configured to move on the display device in accordance with a second scrolling scheme, the second scrolling scheme being different than the first scrolling scheme. A stationary highlight cell may be positioned over a portion of the column or row of program cells, wherein scrolling of the column or row causes one of the cells to enter the highlight cell, the stationary highlight cell being operative to allow user selection of a program cell entered in the highlight cell. The second program cell may be larger than the first program cells, and the stationary highlight cell then expands to accommodate the second program cell when the second program cell enters the highlight cell.

[0024] Another embodiment of a user interface for an interactive program guide includes a plurality of program cells arranged in at least one row or column on a display device and an advertisement cell contained within the program cell column or row. The program cells and the advertisement cell are configured to move on the display device in response to user input. During a first time period the program cells and advertisement cell move in concurrent fashion and during a second time period the program cells or advertisement cell remain stationary on the display device during movement of the other of the advertisement cell or program cells, respectively.

[0025] Another embodiment consists of a user interface for an interactive program guide with an advertisement in the guide whose movement is partially controlled from a remote location such as a cable system head end. The guide includes a plurality of program cells arranged in at least one row or column on a display device and an advertisement cell contained within the program cell column or row. The program cells and the advertisement cell are configured to move on the display device in response to user input. The movement of the advertisement cell is controlled in part based on parameters addressed from the remote location.

BRIEF DESCRIPTION OF THE DRAWINGS

[0026] The present invention is illustrated in the figures of the accompanying drawings which are meant to be exemplary and not limiting, in which like reference characters are intended to refer to like or corresponding parts, and in which:

[0027]FIG. 1 shows a block diagram of a digital broadcast system in accordance with one embodiment of the present invention;

[0028]FIG. 2 illustrates several representative digital video channels and data channels representing signals which are generated, transmitted, received and processed by the digital broadcast system shown in FIG. 1;

[0029] FIGS. 3-8 show exemplary screen displays of an interactive program guide screen having an advertisement in the program listings in accordance with embodiments of the present invention;

[0030]FIG. 9 shows a block diagram of an interactive program guide displayed on the television monitor of the digital broadcast system;

[0031]FIG. 10 shows a block diagram of the interactive program guide when the viewer activates the “up” function to scroll the scheduling data in grid 300 in the direction of arrow U in FIG. 9;

[0032]FIG. 11 shows a block diagram of the interactive program guide when the viewer scrolls the scheduling data up or down to view the scheduling information for other video channels and the advertising data in ad row 312 starts to move in the direction of the scrolling operation;

[0033]FIG. 12 shows a block diagram of the interactive program guide after the previous advertising data scrolls off the screen and new advertising data appears;

[0034]FIG. 13 shows a block diagram of the interactive program guide when the advertising data remains in the top schedule row until a predetermined number of rows is scrolled on the screen;

[0035]FIG. 14 shows a block diagram of the interactive program guide when the viewer activates the “left” function to scroll the scheduling data in grid 300 in the direction of arrow L in FIG. 9;

[0036]FIG. 15 shows a block diagram of the interactive program guide when the viewer activates the “right” function to scroll the scheduling data in grid 300 in the direction of arrow R in FIG. 9;

[0037]FIG. 16 shows a block diagram of the interactive program guide after the viewer moves the scheduling data in grid 300 to the left, and advertisement AD_1 and AD_2 are replaced by advertisement AD_8;

[0038]FIG. 17 shows a block diagram of the interactive program guide after the viewer moves the scheduling data in grid 300 to the right, AD_1 is replaced by AD_1 is inserted in place of AD_2;

[0039]FIG. 18 shows a block diagram of the interactive program guide after AD_1 is in the lens 318, and more extensive text and/or images pertaining to that advertisement (AD_1) appear on the screen;

[0040]FIG. 19 is a flowchart for navigating an interactive program guide with advertisements according to one embodiment of the present invention; and

[0041]FIG. 20 shows the data structure for a table for conveying ad data in accordance with one embodiment of the present invention.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0042] As a general overview, the present invention includes a system and method for providing advertisements in an interactive program guide. The interactive program guide is displayed on a monitor such as in the form of a grid that contains multiple rows and columns, thereby dividing the grid into a number of cells. Each row of data in the interactive program guide represents programming data provided on a specific channel at sequential times, and the columns of information in the grid represent different programs available within a given time slot. According to the present invention, at least one of the rows does not contain the names of programs starting at particular times, but instead contains advertising data. In one aspect of the present invention, the advertising data is related to a time slot in which the advertising data is displayed. In another aspect of the present invention, the advertising data may also be related to substantially adjacent channels displayed on the screen. In addition, the viewer may interact with the advertisements appearing in the interactive program guide. These as well as additional features of the advertisements in the interactive program guide according to the present invention are described in detail below.

[0043] One embodiment of the present invention will now be described in detail with reference to the accompanying figures. In particular and as described in commonly owned U.S. Pat. No. 6,256,785, incorporated herein by reference, FIG. 1 shows a block diagram of a digital broadcast system 100 which includes a head end 102 and a receiving end 104. The head end 102 includes a head end system 106 coupled, in a representative embodiment, to a microwave transmission dish 108. The receiving end 104 includes microwave receiving antenna 110 coupled to a set-top box 112 which, in turn, is coupled to television monitor 114. The transmission in this embodiment is direct dish-to-dish microwave. Alternatively, the digital broadcast may be transmitted from the head end system 102 to a satellite, where the broadcast is “bounced” off for retransmission to the receiving end 104. Furthermore, a wire (cable) connection may be utilized as a digital broadcast medium. Those of skill in the art will appreciate that any conventional television distribution system may be used within the scope of the invention.

[0044] In operation, a digital video signal is generated at the head end system 106 and is transmitted from the microwave transmission dish 108. The digital video signal is received by the microwave receiving antenna 110 and is converted by the set top box 112 into a usable signal which is then input into the television monitor 114 for viewing. The set top box operates an application for generating a navigator user interface for selecting channels for viewing, the navigator including an electronic or interactive program guide. The operation of one such guide is described in the above referenced commonly owned patent application Ser. No. 09/103,317.

[0045] Reference is next made to FIG. 2 which illustrates several digital video channels 120-130. As shown in FIG. 2, video channels 120-130 are representative of MPEG channels 21-31, respectively. Digital video channels 120-130 and data channel 131 are transmitted in tunable bandwidths represented by frequency bands 140 and 142. In this exemplary embodiment, frequency band 140 contains MPEG channels 21-26 (digital video channels 120-125), and frequency band 142 contains MPEG channels 27-31 (digital video channels 126-130). Each of the digital video channels can have data embedded in its stream of data as shown for the frequency band 140 in FIG. 2. Alternatively, a separate data channel 131 can be independent from each of the digital video channels 126-130 but within the same tunable bandwidth as in frequency band 142. Alternatively, the data can be put on a data dedicated frequency band which receives only data and no digital video channels, such as data 132 tunable within frequency band 143.

[0046] Frequency band 140 contains digital video channels 120-125 which include both video information and data. Frequency band 142 tunes digital video channels 126-130 and data channel 131. Data channel 131 includes a continuous stream of data that is then synchronized to the separate digital video channels 126-130. Alternatively, in the situation of frequency band 143, one dedicated frequency band is provided to receive only data bits. Data is stored in memory and synchronized with video when tuned to a frequency band that has video.

[0047] The above-mentioned data, either embedded in the video channels or separately provided therefrom, may include, among other things, scheduling data for use in an interactive or intelligent program guide (IPG). The guide is an interactive electronic program display which lists programs by channel and time as described in U.S. patent application Ser. No. 09/103,317 incorporated herein by reference. The viewer can navigate the guide with a remote control and can select or tag a program listed in the guide for immediate or later viewing.

[0048] Exemplary screen displays for the IPG user interface of the present invention are shown in FIGS. 3-8. As shown in FIG. 3, this embodiment of an IPG consists of a grid 200 with program cells 202 having program choices contained therein, arranged in a two-dimensional grid of time 206 vs. channel 208. An advertisement cell or cells 204 are contained within the grid portion 200 of the IPG, with the word “AD” contained in the channel list 208 displayed adjacent the advertisement cell 204. The advertisement cell 204 is larger than the program cells 202, having in this case about the height of three program cells 202. The advertisement is a bit-mapped graphic arranged either horizontally or vertically, and may further contain animated graphics, such as with animated GIFs, sprite animation such as Flash or Shockwave, or other technology as allowed by the set top box and operating system.

[0049]FIG. 3 shows two advertisements in the advertisement cells. One ad is for a television show “Spin City” airing at 8:30 pm that night. Note that the grid is currently displaying shows airing at 7:00 pm, 7:30 pm and 8:00 pm, so that this ad is for a show just to the future of the current time slot. The second ad is for a program called “CatDog” scheduled to air at 7:30 pm on Tuesdays. This again relates the time of the program featured in the ad to the currently displayed time 206 in the grid 200.

[0050] An alternative advertisement which may appear in the advertisement cell is shown in FIG. 4. This ad 212 is a large sized ad, filling up over two columns of the grid row with a single ad. This ad 212 features a movie called “A Bug's Life,” scheduled to air at 8:00 pm on an upcoming Saturday. Here to, the ad relates in time to the time of the program cells in the IPG.

[0051] The IPG screen in FIG. 3 also features a pick list 210 of categories such as favorites, movies, sports, children, etc. The operation of this pick list is described in the above referenced patent applications.

[0052] In accordance with one embodiment, the user enters the IPG screen with stationary highlight cell 214 (described in the above referenced application including Ser. No. 09/103,317) positioned over the last program that the viewer had been watching. The ad 204 appears at the top of the grid. If the viewer presses the down arrow on his or her remote control device, the grid lines move up off the screen, and the lines of the grid scroll up under the ad 204. The ad 204 sticks in place until an addressable number of lines, sometimes referred to herein as a page, have scrolled beneath it, then unsticks and scrolls up off-screen with the text. As the ad 204 scrolls off the top of the grid, another ad scrolls up from the bottom, so that when the first ad has completely scrolled off screen, the new ad completely occupies the bottom three lines of the scrolling grid. If the viewer continues to scroll, the ad scrolls up into the highlight lens 214, which expands or “trombones” vertically and horizontally to accommodate the different size of the ad. This is shown in FIG. 5. If the viewer scrolls the ad out of the lens 214, it sticks in place when it reaches the top of the screen, restarting the cycle.

[0053] If the viewer presses the up arrow, causing the grid lines to move down off the screen, the ad 204 sticks in place until an addressable number of lines, a page, have scrolled out from beneath it. The ad 204 then unsticks and scrolls into the lens 214, which expands as explained above and as shown in FIG. 5. If the viewer scrolls down further, the ad 204 reaches the bottom of the grid 200, as shown in FIG. 6, at which point it may stick or may scroll off the bottom of the screen. A new ad scrolls in from the top, and, when that entire ad is visible, it sticks in place, restarting the cycle. This provides that the ad 204 will be prominently visible for a set time, as determined by a set number of program cells scrolled, while the viewer uses the IPG to find a desired program to watch. At some point the ad scrolls off, making way for a new one.

[0054] The number of lines that scroll under the ad is addressable, so that it can be changed during the day to support greater or lesser repetition frequency. For example, if there are many ads in the set top box, the number of lines might be set to 15 to allow more ads to be shown over a shorter time. If there are few ads in the box, the number of lines could be set to 25, or even to the total number of lines in the grid, which would mean the ad wouldn't scroll off at all. As such, the page size is dynamically configurable per each instance of the ad banner table, as described further below. If a single 24-hour table is used, the page size is the same for the entire 24-hour period.

[0055] Further in accordance with embodiments of the invention, when an ad is not in the lens 214, left/right scrolling of the grid has no effect on the ad. The scrolling grid scrolls independently of the ad. Likewise, when an ad is in the lens, left/right scrolling has no effect on a the grid. When an ad is in the lens, left/right scrolling causes the ads to scroll at the rate of one complete ad per left/right arrow execution. Ads are not “slippery” and do not get truncated as program cells do. If an ad is in the lens and the viewer presses the right arrow, the ad to the right of the ad in the lens scrolls into the lens, and a new ad scrolls in from off-screen to replace it, as shown in FIG. 7. Depending upon the size of an ad buffer, as described further below, the new ad may be the ad that was originally in the lens, or it may be an entirely new ad. If the system only supports two ads at a time, the same two ads will simply loop, as shown in FIG. 7, where the ad for Spin City moved in from the right as the new ad.

[0056] The number of ads that may be supported by a system simultaneously depends on set top box memory and bandwidth considerations. A minimum of two half-grid-wide ads or one full-grid-wide ad should be available at any time. Ads may be made available to the system in 30 minute blocks and for 60-second avails. The system also supports descriptive text, graphics or an HTML page about the ad to be sent and shown in a description box on the IPG grid screen.

[0057] The advertisement cell and inserted advertisement has many interactive capabilities as the program cells. For example, for ads for television programming, pressing an enter button on an ad in the highlight lens produces an action corresponding to the behavior of program cells when in the lens, as described in the above referenced related applications. This action includes tuning to the station of a currently airing show, marking a show for future viewing, or in the case of product-based advertising, taking the viewer to a virtual channel or initiating an e-commerce purchase.

[0058] Advertisements may support the following additional functionality. They may be changed according to guide page, and may be replaced after scrolling through a defined number of channels. When scrolling, new ads should appear in a manner that leaves a full ad visible. Ads may changed according to priority, current time, and category, as selected from the pick list. Ads may be set not to change until a viewer moves to a different page, after which time the ad updates as scheduled. Multiple ads may be associated with a page, and have a priority that determines when they will be displayed. The first time a page is viewed, the highest priority ad is displayed. Upon the next viewing occasion, the second highest priority ad is displayed, and so on, up to, in one embodiment, four priority levels. Default ads should appear when no ad is scheduled at a particular time, and will be indicated as such by assigning them the lowest priority. These ads may be sent as part of every ad banner table, as described below and in the attached Appendix, so that they need not be stored at startup.

[0059] For a program guide which is list-based, FIG. 8 shows how two or more ads are arranged vertically. Vertically stacked ads are displayed when the viewer has displayed a category sort through use of the pick list 210, as shown in FIG. 8 in which the program choices for the news category are displayed.

[0060]FIG. 9 shows in block diagram form an IPG as it may be representatively displayed on television monitor 114. The IPG contains scheduling data for the video channels. The scheduling data is arranged along rows and columns forming grid 300. In one embodiment of the present invention, the top row 302 displays time slots representatively shown in half-hour periods, and the left-most column 304 displays the names of video channels. Thus, according to the IPG shown in FIG. 9, program_1 displayed in cell 306 of grid 300 is scheduled for broadcast at 7:00 p.m. on the CBS channel. FIG. 9 shows scheduling data displayed in the rows of grid 300 for the following video channels between 7 p.m. and 8 p.m. (top to bottom in grid 300): CBS, NBS, ABC, Disney, HBO, and Bravo.

[0061] As further illustrated in FIG. 9, the cells of grid 300 have variable sizes. The cell size depends on the length of the program for a particular video channel. As an example, program_8 shown in cell 308 is at least 1 hour long, such that cell 308 occupies the entire row in grid 300. As another example, program_5 broadcast on the NBC channel is half-hour long and consequently occupies cell 310 which is one-third of the entire row and is smaller than cell 308. Hence, the cells of grid 300 containing program names and starting/ending at the columnar boundaries of time slots may have different sizes depending on the program length.

[0062] According to one aspect of the present invention, one row in grid 300 is occupied by advertising data instead of scheduling data described above, as shown in FIG. 9. In one embodiment of the present invention, the advertising data takes up row 312 of grid 300. Since the ad data does not start at a particular time slot as opposed to a particular program, the cells in ad row 312 are variably sized and do not have to start/end at the columnar boundaries of the time slots. For example, AD_1 occupies cell 314 which does not truncate at the time slot boundaries displayed in FIG. 9. Similarly, AD_2 occupying cell 316 is not restricted to the time slot boundaries for schedule data.

[0063] Further shown in FIG. 9 is lens 318 responsive to a remote control (not shown) operated by the viewer. By activating directional buttons (left, right, up, down) on the remote control, the viewer moves the lens 318 from one cell to another in grid 300. As described in detail in U.S. patent application Ser. No. 09/103,317, the lens may be stationary while the grid scrolls behind it. Alternatively, lens 318 may move or “slide” in a desired direction across the cell boundaries, or alternatively may “jump” to the next cell to accommodate the size of that cell when the viewer presses the directional button.

[0064] As also described in U.S. patent application Ser. No. 09/103,317, the current video program is presented to the viewer on the screen when the viewer presses a “Gimme” or enter button on the remote control, provided the activated video program is currently in progress. Alternatively, another finction activated in response to the viewer pressing the “Gimme” button on the remote control allows the viewer to tag future video programs for later viewing or recording. Thoroughly explained in U.S. patent application Ser. No. 09/103,317, the description of these functions will not be repeated herein in order not to detract from the present invention.

[0065] The IPG data, including scheduling and advertising data, presented in grid 300 may be scrolled up, down, left or right in response to the viewer pressing directional buttons on the remote control. For example, when the viewer activates the “down” function to scroll the scheduling data in grid 300 in the direction of arrow D in FIG. 9, the program schedule data moves down. In accordance with the present invention, the advertisement in ad row 312 does not move down immediately but rather stays in the same position on the display, at least for a given number of program cells scrolled. In contrast to the embodiments described above with reference to FIGS. 3-8 in which the advertisement data became temporarily stationary at the top or bottom while a certain number of program cells scrolled past, the advertisement row 312 in this embodiment is shown to be temporarily stationary in the middle portion of the grid 300. The exact position of the advertisement during its period of temporary non-movement is a matter of design choice. Scheduling data for new video channels appear at the top of the grid while the scheduling data for video channels HBO and Bravo scrolls off the monitor screen.

[0066] Similarly, when the viewer activates the “up” function to scroll the scheduling data in grid 300 in the direction of arrow U in FIG. 9, grid 300 acquires the appearance as shown in FIG. 10. Scheduling data for new video channels Cinemax and Pay-Per-View appears in rows 324 and 326, respectively, for time slots 7:00 p.m., 7:30 p.m. and 8:00 p.m., while the scheduling data for video channels CBS and NBC scrolls off the monitor screen. FIG. 10 shows grid 300 after the viewer moved it up by 2 rows such that the scheduling data is displayed in the rows for the following channels (top to bottom in grid 300): ABC, Disney, HBO, Bravo, Cinemax, Pay-Per-View. The advertisements in ad row 312 have not moved during this brief scrolling operation.

[0067] It is understood, of course, that the viewer may move the scheduling data within grid 300 by any number of rows.

[0068]FIG. 10 shows that ad row 312 containing the advertising data remains in the same position as before the scrolling operation of the scheduling data. As the viewer activates the “down” or “up” function for moving the scheduling data within grid 300, the scheduling data for adjacent video channels (Disney, HBO in FIG. 10) scrolls underneath ad row 312 containing advertisements. The scheduling data re-appears below or above ad row 312 during the scrolling operation.

[0069] In one aspect of the present invention, the contents of ad row 312 are replaced with different advertising material after a predetermined number of channels are scrolled off the screen in response to the viewer using “up” and/or “down” buttons on the remote control device. As the viewer chooses to scroll the scheduling data up or down to view the scheduling information for other video channels, ad row 312 starts moving in the direction of the scrolling operation. As shown in FIG. 11, ad row 312 “unsticks” and moves in the scrolling direction, along with other video channels displayed in the grid 300, after a predetermined number of video channels are scrolled off the screen. Thus, as the viewer scrolls the scheduling data up or down in grid 300, ad row 312 starts moving as illustrated in FIG. 11.

[0070] After ad row 312 scrolls off the screen, another row of ad data 312′ appears at the top or bottom of the screen, depending on the scrolling direction. Hence, if the previous ad data scrolls off the screen as shown in FIG. 11, new ad data in ad row 312′ appears at the bottom of the screen as shown in FIG. 12. If the viewer continues the scrolling operation in the same direction, the new ad data in ad row 312′ scrolls in that direction until it gets to a predetermined location on the screen. In this embodiment of the present invention, the predetermined location for the ad row is substantially in the center of the screen. At that time, the new advertising data in ad row 312′ “sticks” in the predetermined location despite the viewer's scrolling operation of the scheduling data in grid 300. Of course, the viewer may reverse the scrolling direction prior to the new advertising data in ad row 312′ reaching its destination. In this situation, ad row 312′ does not “stick” anywhere, and instead, the new advertising data continues to scroll off the screen in the new direction and may once again re-appear on the screen from a different direction.

[0071] In another aspect of the present invention, the advertising data is related to substantially adjacent or nearby video channels displayed in grid 300. For example, AD_1 and AD_2 displayed in cells 314 and 316, respectively, as shown in FIG. 9 may be related to any one or more of the displayed video channels: CBS, NBC, ABC, Disney, HBO, and Bravo. When the viewer scrolls the scheduling data up or down in grid 300, the new ad appearing at the top or bottom of the screen is related to the nearby video channels as they appear in view. As a result, the advertising data is replaced according to the contents and names of the video channels that scroll onto the screen and become adjacent ad row 312 in grid 300.

[0072] Referring to FIG. 12, AD_3 in ad row 312 may be an advertisement for an adult program starting at 9:00 p.m. on the Playboy channel. The advertisement is related to the channel listing substantially adjacent or nearby ad row 312. In another example with reference to FIG. 12, AD_4 in ad row 312 may be an advertisement for an on-line discount broker. This advertisement is contextually related to the CNBC channel for broadcasting financial news and information, as known to those skilled in the art.

[0073] In another aspect of the present invention, if the viewer scrolls the scheduling data up or down causing the rows of grid 300 to move off the screen and causing the advertisements to move from the center row, the ads “stick” at the top and/or bottom of the screen depending on the scrolling direction. As shown in FIG. 13, the advertisements remain in the top schedule row 328 until a predetermined number of rows is scrolled beneath the ads. Then, the advertisements in the top schedule row 328 “unstick” and scroll off the screen. Alternatively, the ads in the top schedule row 328 may “unstick” and are replaced by a new advertisement based on the video channels that scroll into view and are in proximity of the top schedule row 328 in grid 300 as described hereinabove.

[0074] As briefly mentioned, the viewer may scroll the scheduling data in grid 300 to the left in the direction of arrow L or to the right in the direction of arrow R shown in FIG. 3. For example, when the viewer activates the “left” function to scroll the scheduling data in grid 300 in the direction of arrow L in FIG. 9, grid 300 has the appearance as shown in FIG. 14. The scheduling data for the same video channels as in FIG. 9 appears in grid 300 for the new time slots 5:30 p.m., 6:00 p.m. and 6:30 p.m. FIG. 14 shows grid 300 after the viewer moved it to the left by 3 columns.

[0075] Similarly, when the viewer activates the “right” function to scroll the scheduling data in grid 300 in the direction of arrow R in FIG. 9, grid 300 has the appearance as shown in FIG. 10. The scheduling data for the same video channels as in FIG. 9 appears in grid 300 for time slots 7:30 p.m., 8:00 p.m. and 8:30 p.m. FIG. 15 shows grid 300 after the viewer moved it right by 1 column.

[0076]FIGS. 14 and 15 further show that the advertising data “sticks” in ad row 312 remains in the same position as before the left scrolling or right scrolling operation of the scheduling data. That is, as the viewer activates the “left scroll” or “right scroll” function for moving the scheduling data within grid 300, the advertisements do not change. As explained above, this occurs when the advertisement data is not positioned in the lens 318 (the lens not being specifically shown in FIGS. 14 and 15). Left/right scrolling has no effect on the ads, and the scheduling data in grid 300 scrolls independently of the ads.

[0077] In yet another aspect of the present invention, the advertisements in ad row 312 are replaced during the left/right scrolling operation after browsing through a predetermined number of time slots for the scheduling data. A new ad scrolls into place from the scrolling direction on the screen at a representative rate of one complete advertisement per left/right arrow button press.

[0078] In still another aspect of the present invention, the replacement of ads in ad row 312 during the left/right scrolling operation is directly related to and depends on time slots displayed in grid 300. For example, AD_1 located in cell 314 shown in FIG. 9 may be an advertisement for a program that starts on the NBC channel at 8:00 p.m. If the viewer moves the scheduling data in grid 300 to the left, AD_1 and AD_2 located in ad row 312 may be replaced by AD_8 as shown in FIG. 16. AD_8 contains an advertisement for a program on the HBO channel that starts at 7:30 p.m.

[0079] Similarly, if the viewer moves the scheduling data in grid 300 to the right, AD_(—)1 located in cell 314 may be replaced by AD_2 located in cell 316, and AD_9 is inserted in place of AD_2 as shown in FIG. 17. As an example, AD_9 may contain an advertisement for a program on the Bravo channel that starts at 10:30 p.m.

[0080] As described above, the viewer may move lens 318 from one cell to another over the entire grid, or may move the grid around while the lens stays stationary on the display and cells enter and leave it, in either case thereby selecting different cells. Using lens 318, the viewer may highlight the ad cell. In this situation, lens 318 “trombones” both vertically and horizontally in order to properly display the ad because the ad will generally not be the precise width of the grid columns surrounding it. This “tromboning” action is functionally similar to the “tromboning” that takes place with program cells in the program guide; that is, lens 318 changes size dynamically as the ad scrolls into it. With ad cell scrolling, lens 318 “trombones” vertically and/or horizontally to accomodate the difference in height and/or width between ad cells and program cells.

[0081] In another aspect of the present invention, when the viewer selects the ad cell using lens 318 as described above, additional details of the ad may appear on the screen for a predetermined period of time. For example, when AD_1 in ad row 312 is in lens 318, more extensive text and/or images pertaining to that advertisement appear on the bottom half of the screen as shown in FIG. 18. After the expiration of the predetermined time period, AD_1 returns to its original condensed version to occupy cell 314.

[0082] The viewer may press a “Gimme” button on the remote control while the ad is in lens 318. The following operations may take place depending on the contents of the ad which was activated by the viewer. If the ad is for a currently airing program, or a program airing within a predetermined time period, pressing the “Gimme” button while the ad is in the lens takes the viewer to the channel showing the program. If the ad is for a program that is airing at some time in the future, pressing the “Gimme” button initiates a tag sequence at an appropriate point for later viewing. If the ad is for a Pay-Per-View event, pressing the “Gimme” button begins a buy sequence at an appropriate point to purchase the requested event. If the ad is for another product or service, pressing the “Gimme” button takes the viewer to the information page for that service. Alternatively, a store-and-forward or other type of purchase may be initiated for the advertised product or service upon pressing of the “Gimme” button.

[0083]FIG. 19 is a flowchart for displaying on a screen the interactive program guide with advertisements according to the present invention. In particular, FIG. 19 shows a process by which ads may be selected for insertion into the advertisement cell based upon navigational movement in the IPG. In block 1400, the viewer activates a particular function in the interactive program guide via the remote control device. In block 1402, a decision is made whether the viewer scrolled schedule data up or down in grid 300 by a predetermined number of channels. If so, a new ad is provided on the screen in block 1404. Otherwise, in block 1406, a decision is made whether the viewer scrolled the schedule data to display another time slot in grid 300. If so, a new ad related to the new time slot in grid 300 is inserted in ad row 312 in block 1408.

[0084] As further shown in FIG. 19, in block 1410 it is determined whether the viewer scrolled the schedule data to display another channel listing. If so, in block 1412 a new ad related to the new channel listing in grid 300 is provided in ad row 312. Otherwise, in block 1414 a decision is made whether the viewer placed lens 318 over the ad in row 312. If this is the case, additional information about the ad in the lens is displayed on the screen in block 1416. In block 1418, another decision is made whether the viewer selected an ad using the “Gimme” button. If so, in block 1420 various functions are performed depending on the contents of the ad as described above.

[0085] In the preferred embodiment, the top row displays time slots representatively shown in half-hour periods, and the left-most column on the screen displays the names of video channels. Those skilled in the art will recognize that the present invention is not limited to such implementation. Among other things, time slots in grid 300 may be of any duration, and the position of time slots and channel listing on the screen may be arranged differently. For example, time slots may occupy the bottom row, and the right-most column on the screen may be allocated to the channel listing.

[0086] Further in the preferred embodiment, the advertisements are displayed in substantially the center row of grid 300. Those skilled in the art, however, will recognize from the disclosure herein that the present invention is not limited thereto. Any row of grid 300 may be assigned to the ads.

[0087] Still further according to the present invention, one or several ads may appear in one row. Furthermore, the advertisements may occupy more than one row in grid 300.

[0088] Still further in the preferred embodiment, more extensive text and/or images pertaining to that advertisement appear on the bottom of the screen if the ad is highlighted by the lens 318. Those skilled in the art will recognize from this disclosure that additional text and/or images may occupy any portion of the screen, including any top portion.

[0089]FIG. 20 shows a data structure for storing data transmitted from a head end or other central station to subscriber stations having display devices. The data structure specifies the format of an ad table. The table defines the time(s) that an ad is ready for display in the program guide, the priority in the rotation sequence, the duration of its display for a given rotation, and its location within the guide. The table is sent to subscriber devices at regular intervals, such as in a rolling 12-hour present and following format. The definitions for the entries in the ad table in FIG. 20 are contained in the Appendix to this specification, which fully forms part of this application.

[0090] While the invention has been described and illustrated in connection with preferred embodiments, many variations and modifications as will be evident to those skilled in this art may be made without departing from the spirit and scope of the invention, and the invention is thus not to be limited to the precise details of methodology or construction set forth above as such variations and modification are intended to be included within the scope of the invention.

APPENDIX

[0091] The Appendix, which forms part of the present application, contains the definitions for the fields in the advertisment delivery table shown in FIG. 20. Some of the terminology, including names of levels and zones, is best understood with reference to prior applications incorporated herein by reference, such as Ser. No.09/018,541.

[0092] The definitions for the fields in the above table are as follows: description Type table_version Version of the content contained in this uint8 M table. format_version Version of the table format definition. For uint8 M this release, this value should be 3. block_size Size of the fields in bytes between block Uint16 M size and 1^(st) loop size. offset_start_date_time The date and time from which all time and cdatetime[48] M date bitmaps are relative to. display_page_size_tv For the Guide Level in the TV Zone, the uint16 M number of Guide rows to be placed between successive Ad Banners (0 means not applicable). display_page_size_ec For the Guide Level in the express cinema uint16 M Zone, the number of Guide rows to be placed between successive Ad Banners (0 means not applicable). display_page_size_croads For the Guide Level in the Crossroads uint16 M Zone, the number of Guide rows to be placed between successive Ad Banners (0 means not applicable). 1st fixed loop size Size of the first fixed length loop. Uint16 M record_count Number of fixed-length records in this uint16 M table before the variable-length blob at the end of the table. lineup_bitmap A bitmap of lineups where least bit_flag[24], M significant bit is lineup 1 and most see definition significant bit is lineup 24. Values of each bit are: 0: Record is not applicable to this lineup. 1: Record is applicable to this lineup. navigator_zone Navigator zones in which this ad appears dom_flags M (Phase I only supports TV): 0 × 01 TV zone; 0 × 02 Express zone; 0 × 04 Crossroads zone; 0 × 08 through 0 × 80 are reserved. navigator_level Navigator levels in which this ad appears active_flags M (Phase I only supports Guide): 0 × 01 Host level; 0 × 02 Multiview level; 0 × 04 Guide level; 0 × 08 Channel level; 0 × 10 Info level; 0 × 20 Custom level; 0 × 40 through 0 × 80 are reserved. start_time Date/time when this data becomes Uint(16) M effective. stop_time Date/time when this data expires Uint(16) M cycle_duration The duration (in minutes) that Ad remains Unit16 M on the screen before cycling off during a single rotation sequence. This field allows each Ad to have a unique weight as measured by time. A value of 0 means always visible (i.e. never rotates out). asset_type_part1 The type of asset used for the initially uint8 M viewable portion of the ad (Phase I only supports asset type Graphic) 0 × 00 Not applicable, 0 × 01 Text; 0 × 02 Graphic; 0 × 03 Video; 0 × 04 Shock 0 × 05 URL; 0 × 06 HTML; 0 × 07 through OxFF are reserved. asset_id_part1 Unique identifier for the initially viewable uint16 M portion of the ad (0 indicates no ad banner asset to identify, 1 means the ad asset is text, as defined in the variable_data section) asset_type_part2 The type of asset used for extended lens uint8 O portion of the ad (Phase I only supports Text): 0 × 00 Not applicable; 0 × 01 Text; 0 × 02 Graphic; 0 × 03 Video; 0 × 04 Shock; 0 × 05 URL; 0 × 06 HTML; 0 × 07 through 0 × FF are reserved. asset_id_part2 Unique identifier for the extended lens uint16 O portion of the ad (0 means no ad asset to identify, 1 means the ad banner asset is text; as defined in the variable_data section). asset_type_PIP The type of asset used for display in the uint8 O PIP when this ad is activated (PIP ad portions are Phase 3/3+): 0 × 0 Not applicable; 0 × 01 Text; 0 × 02 Graphic; 0 × 03 Video; 0 × 04 Shock; 0 × 05 URL; 0 × 06 HTML; 0 × 07 through 0 × FF are reserved. Note, still/animated graphics and video are the only reasonable asset types that would be presented in the PIP. asset_id_PIP Unique identifier for the PIP portion of the uint16 O ad (0 means no ad asset to identify). priority The Priority of the AD. A value of 0 is Uint8 M highest and 255 is lowest priority. intended_audience_bitmas Bitmask which indicates the audience for audience_flags O k which this ad is intended: 0: ad not intended for this audience; 1: ad intended for this audience. The use of this field to present ads specific to a viewer will require the STB to know demographic information for the americast subscriber category_id1 The ID of the pre-defined or user-defined uint16 O category #1. A value of 0 indicates a null pointer. category_id2 The ID of the pre-defined or user-defined uint16 O category #2. A value of 0 indicates a null pointer. category_id3 The ID of the pre-defined or user-defined uint16 O category #3. A value of 0 indicates a null pointer. category_id4 The ID of the pre-defined or user-defined uint16 O category #4. A value of 0 indicates a null pointer. ad_type Defines the type of ad for this record uint8 M (Phase 1 supports 0 × 00, 0 × 01, 0 × 02, 0 × 06 and 0 × 07 ads) 0 × 00 reserved 0 × 01 half length banner ad; 0 × 02 full length banner ad; 0 × 03 Parent Virtual Channel Ad (PVCA); 0 × 04 Fixed Virtual Channel Ad (FVCA); 0 × 05 Highlighted Channel Ad (HCA); 0 × 06 sort category banner ad (upper); 0 × 07 sort category banner ad (lower); 0 × 09 Hot Spot ad; 0 × 10 Message ad; 0 × 1A through 0 × FF are reserved. beg_display_row For full and half ads, the first row in the uint16 O guide after which this ad is intended to be displayed. Note, a 0 indicates that no row ranges are specified and that the ad is displayable at any point in the Guide. For FVCA ads, the first row in the guide on which this ad should be placed. For ads other than full, half and FVCA, this field will be 0 and will be ignored. end_display_row For full and half ads, the last row in the uint16 O guide before which this ad is intended to be displayed. Note, a 0 indicates that no row ranges are specified and that the ad is displayable at any point in the Guide. For FVCA ads, the last row in the guide on which this ad should be placed. For ads other than full, half and FVCA, this field will be 0 and will be ignored. display_row_package_cou For full, half and FVCA ads, the number uint8 O nt of discrete row ranges in/on which ad display is intended. Note, this position_service_id For PVCA ads, the parent service ID for uint16 M: PVCA and the row in the guide below which the ad HCA should be displayed. For HCA ads, the service ID for the row in the guide to be highlighted. This field will be 0 and will be ignored For ad types other than PVCA and HCA. h_position The left/right display information for the unit16 M: hot spot position of the ad. This is a stub for future and message (Phase 3) ads, such as hot spot and message ads, which may be placed at specific screen locations. This coordinate may be a pixel offset from screen left, or a table’s column index, depending on the ad type. This field will be 0 and will be ignored for ad types other than hot spot and message. v_position The top/bottom display information for unit16 M: hot spot the position of the ad. This is a stub for and message future (Phase 3) ads, such as hot spot and message ads, which may be placed at specific screen locations. This coordinate may be a pixel offset from screen top, or a table’s row index, depending on the ad type. This field will be 0 and will be ignored for ad types other than hot spot and message. opacity The percent opacity of the ad. This is a uint8 M hot spot stub for future (Phase 3) ads, such as hot and message spot and message ads, which may lay graphics over video and require an opacity specification. This field will be 0 and will be ignored for ad types other than hot spot and message. action_type Action type associated with “G” key uint8 M (Phase I only supports 0 × 00): 0 × 00 no action is associated with the ad; 0 × 01 a destination URL will carry out the action using the URL string defined in the variable_data section; 0 × 02 event for autotune/mark/mark-to- record; 0 × 03 marquee for autotune/purchase/ purchase-and-record; 0 × 04 generally purchasable product (purchasable through Generic Buy Process using e-commerce engine); 0 × 05 a destination virtual channel page in the Crossroads zone will carry out the action. service_id The identifier for the service on which the uint16 M: action type advertised program in the ad is to be aired. 0 × 02 This helps identify programs associated with action type 0 × 02 (i.e. event for autotune/mark/mark-to-record). For action types other than 0 × 02, this value will be 0 and will be ignored. event_date_time GMT date and time the program’s cdatetime[48] M: action type broadcast begins. This helps identify 0 × 02 programs with action type 0 × 02 (i.e. event for autotune/mark/mark-to-record). For action types other than 0 × 02, this value will be 0 and will be ignored. marquee_id The identifier for the marquee record for uint16 M: action type autotune/purchase/purchase-and-record. 0 × 03 For action types other than 0 × 03, this value will be 0 and will be ignored. product_id The identifier for the generally TBD (dependent M: action type purchasable item. on e-commerce 0 × 04 engine) virtual_page_id The identifier for the virtual page to be TBD (depends on M: action type accessed in order to cany out the action. how Crossroads 0 × 05 This is used for ads with action type 0 × 05 virtual pages are (i.e. a page in the Crossroads zone). Note, referenced) if all pages in the Crossroads zone have associated URLs, then this field should be eliminated and the URL string defined in the variable data section should be used. variable_data_offset Starting position offset (in Bytes) of the Uint32 M data in the variable-length record data. An offset of 0 points to the variable data count field variable_data_count Number of records that follow Unit16 M url_string_length Specifies the length of the URL field uint16 M url_string For URL ad types, the URL associated vstring[˜] O with the ad. For URL action types, the URL to visit in order to fulfill the action. display_row_package_len Specifies the length of the display row uint16 M gth package field. beg_display_row_range[] The first row in this guide range after uint16[] O which this ad is intended to be displayed. For FVCA ads, the first row in this guide range on which this ad should be placed. end_display_row_range[] For half and full ads, the last row in this uint16[] O guide range before which this ad is intended to be displayed. For FVCA ads, the last row in this guide range on which this ad should be placed. ad_part1_text_length Specifies the length of the text for part 1, uint16 M the initially viewable portion, of the ad. ad_part1_text Ad text. vstring[˜] O ad_part2_text_length Specifies the length of the text for part 2, uint16 M the extended lens portion, of the ad. ad_part2_text Description of the ad. vstring[˜] M 

What is the claimed is:
 1. A method of displaying advertising in an electronic program guide on a display device, the electronic program guide comprising at least a list of program cells each containing a program choice available for viewing, the method comprising: scrolling the list of program cells on the display device in a first direction in accordance with a first scrolling scheme; displaying an advertisement cell within the list of program cells; and moving the advertisement cell in the first direction as the list of program cells scrolls, the advertisement cell moving in accordance with a second scheme different than the first scrolling scheme.
 2. The method of claim 1, comprising controlling the second scheme from a location remote from the display device.
 3. The method of claim 1, wherein moving the advertisement cell in accordance with a second scheme comprises scrolling the advertisement cell in concurrence with the scrolling of the program cell list during a first time portion in which the program cell list scrolls and keeping the advertisement cell stationary during a second time portion in which the program cell list scrolls.
 4. The method of claim 3, comprising determining the second time portion based upon a first number of program cells which have moved past the advertisement cell while the advertisement cell is kept stationary.
 5. The method of claim 4, comprising receiving the first number of program cells from a location remote from the display device.
 6. The method of claim 3, wherein the first direction comprises a vertical scrolling direction on the display device.
 7. The method of claim 6, wherein the program cell list contains a top cell and a bottom cell displayed on the display device, wherein keeping the advertisement cell stationary comprises keeping the advertisement cell stationary when the advertisement cell reaches the top or bottom cell of the program cell list.
 8. The method of claim 3, wherein keeping the advertisement cell stationary comprises keeping the advertisement cell stationary during scrolling of a set number of program cells in the program cell list.
 9. The method of claim 1, comprising inserting an advertisement into the advertisement cell which advertisement is related to one or more program cells displayed in the program guide on the display screen.
 10. The method of claim 9, comprising replacing the inserted advertisement in the advertisement cell with another advertisement when the program choices displayed in the program guide change due to scrolling of the program cells.
 11. The method of claim 1, wherein the electronic program guide comprises program choices available for viewing at scheduled times, and wherein the program cells are arranged according to the scheduled times of the program choices.
 12. The method of claim 11, comprising inserting an advertisement into the advertisement cell which advertisement is related to a program choice available for viewing at a time close in time to the scheduled times of program choices displayed on the display screen.
 13. The method of claim 12, wherein inserting the advertisement comprises inserting the advertisement related to a program choice available for viewing at a time which is past the scheduled times of program choices displayed on the display screen.
 14. The method of claim 1, wherein moving the advertisement cell in accordance with a second scheme comprises scrolling the advertisement cell in concurrence with the scrolling of the program cell list during a first time portion in which the program cell list scrolls and scrolling the advertisement cell during a second time portion in which the program cell list is stationary.
 15. The method of claim 14, comprising displaying a highlight cell on the display device such that program and advertisement cells may enter the highlight cell, and wherein scrolling the advertisement cell during a second time portion comprises scrolling the advertisement cell when the advertisement cell is entered in the highlight cell.
 16. A method for providing on a screen an interactive program guide including schedule data and advertising data, the method comprising: arranging the schedule data into a grid containing rows and columns according to a listing of channels and starting times of programs that are broadcast via the channels such that a plurality of cells is formed containing names of the programs; inserting the advertising data into a predetermined row of the grid to display on the screen; and scrolling the grid to display the listing of other channels and the starting times of other programs broadcast via the other channels, wherein the scrolling of the schedule data in in the grid is at least partially independent of the scrolling of the advertising data in the grid.
 17. The method according to claim 16, wherein the advertising data remains in the predetermined row of the grid while the schedule data is scrolled on the screen.
 18. The method according to claim 16, wherein the advertising data is replaced by other advertising data after a predetermined number of channels in the schedule data has been scrolled off the screen.
 19. The method according to claim 16, wherein the advertising data is replaced by other advertising data after a predetermined number of starting times of programs has been scrolled off the screen.
 20. The method according to claim 16, wherein the advertising data is arranged into cells such that at least one advertising cell is displayed in the predetermined row of the grid.
 21. The method according to claim 20, wherein the advertising cell contains an advertisement related to the starting time of one or more programs displayed on the screen.
 22. The method according to claim 21, wherein the advertising cell displayed in the predetermined row of the grid is replaced by another advertising cell if the schedule data in the grid is scrolled in a direction parallel to the starting times to display a starting time of another program that is related to an advertisement contained in said another advertising cell.
 23. The method according to claim 20, wherein the advertising cell contains an advertisement related to the channels in the grid which are in substantial proximity to the predetermined row containing the advertising data displayed on the screen.
 24. The method according to claim 23, wherein the advertising cell displayed in the predetermined row of the grid is replaced by another advertising cell if the schedule data in the grid is scrolled in a direction parallel to the listing of channels in order to display the listing of other channels such that an advertisement contained in said another advertising cell is related to said other channels.
 25. The method according to claim 16, wherein the schedule data and advertising data are scrolled in a direction parallel to the rows or columns of the grid.
 26. The method according to claim 16, wherein the predetermined row containing the advertising data in the grid is located substantially in a center of the screen.
 27. The method according to claim 16, further comprising highlighting the advertising cell on the screen such that a more detailed description of an advertisement contained in the highlighted advertising cell is displayed on a portion of the screen.
 28. The method according to claim 16, further comprising highlighting and selecting the advertising cell on the screen such that a channel program is displayed on the screen if an advertisement contained in the selected cell is for the channel program in progress or for the channel program scheduled for broadcast within a predetermined time period.
 29. The method according to claim 16, further comprising highlighting and selecting the advertising cell on the screen such that a channel program is tagged for later viewing if an advertisement contained in the selected cell is for the channel program scheduled for broadcast at future time.
 30. The method according to claim 16, further comprising highlighting and selecting the advertising cell such that an information page is displayed on the screen for a program or service that pertains to an advertisement contained in the selected cell.
 31. A user interface for an interactive program guide displayable on a display device, comprising: a listing of program choices arranged in at least one row or column on a display device, the listing being navigated by a user through scrolling in accordance with a first scrolling scheme; and an advertisement cell contained within the program listing column or row, the advertisement cell being configured to move on the display device in accordance with a second scrolling scheme, the second scrolling scheme being different than the first scrolling scheme.
 32. The user interface of claim 31, comprising a list of service identifiers displayed in association with the program choices in the program choice listings and an advertisement identifier contained in the list of service identifiers and displayed in association with the advertisement cell.
 33. A user interface for an interactive program guide displayable on a display device, comprising: a set of first program cells arranged in at least one row or column on a display device, the set being navigated by a user through scrolling in accordance with a first scrolling scheme; and at least one second program cell arranged within the column or row, the second program cell being configured to move on the display device in accordance with a second scrolling scheme, the second scrolling scheme being different than the first scrolling scheme.
 34. The user interface of claim 33, comprising a stationary highlight cell positioned over a portion of the column or row of program cells, wherein scrolling of the column or row causes one of the cells to enter the highlight cell, the stationary highlight cell being operative to allow user selection of a program cell entered in the highlight cell.
 35. The user interface of claim 34, wherein the at least one second program cell is larger than the first program cells, and wherein the stationary highlight cell expands to accommodate the second program cell when the second program cell enters the highlight cell.
 36. A user interface for an interactive program guide displayable on a display device, comprising: a plurality of program cells arranged in at least one row or column on a display device, the program cells being movable on a display device in response to user input; and an advertisement cell contained within the program cell column or row, the advertisement cell being configured to move on the display device in response to user input; wherein during a first time the program cells and advertisement cell move in concurrent fashion and during a second time the program cells or advertisement cell remain stationary on the display device during movement of advertisement cell or program cells, respectively.
 37. A user interface for an interactive program guide displayable on a display device, comprising: a plurality of program cells arranged in at least one row or column on a display device, the program cells being movable on the display device in response to user input; and an advertisement cell contained within the program cell column or row, the advertisement cell being configured to move on the display device in response to user input and being controlled in part based on parameters addressed from a location remote from the display device. 